package com.assignwork.vo;

import com.assignwork.util.BigDecimalSerializer;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.core.tool.utils.DateUtil;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * @ClassName WorkArrangeLandPageVO
 * @Description 陆运配工VO
 * @Author dujianyu
 * @Date 2023/12/18 9:01
 */
@Data
public class WorkArrangeLandListVO {

    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键ID")
    private Long id;

    @ApiModelProperty(value = "作业线号")
    private String workNo;

    @DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
    @ApiModelProperty(value = "计划日期")
    private LocalDate planDate;

    @ApiModelProperty(value = "时间段")
    private String timeSpace;

    @ApiModelProperty(value = "时间段")
    private String timeSpaceName;

    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "区域")
    private Long area;

    @ApiModelProperty(value = "区域")
    private String areaIds;

    @ApiModelProperty(value = "区域")
    private String areaNames;

    @ApiModelProperty(value = "装卸")
    private String loadType;

    @ApiModelProperty(value = "装卸")
    private String loadTypeName;

    @ApiModelProperty(value = "散杂")
    private String packageBulk;

    @ApiModelProperty(value = "散杂")
    private String packageBulkName;

    @ApiModelProperty(value = "作业类型")
    private String landWorkType;

    @ApiModelProperty(value = "作业类型")
    private String landWorkTypeName;

    @ApiModelProperty(value = "工人信息")
    private String workerInfo;

    @ApiModelProperty(value = "工人人数")
    private Integer workers;

    @ApiModelProperty(value = "固机信息")
    private String fixedMachineInfo;

    @ApiModelProperty(value = "固机数量")
    private Integer fixedMachines;

    @ApiModelProperty(value = "吊车信息")
    private String craneInfo;

    @ApiModelProperty(value = "吊车数")
    private Integer cranes;

    @ApiModelProperty(value = "叉车信息")
    private String forkliftInfo;

    @ApiModelProperty(value = "叉车数")
    private Integer forklifts;

    @ApiModelProperty(value = "牵引车信息")
    private String tractorInfo;

    @ApiModelProperty(value = "牵引车数")
    private Integer tractors;

    @ApiModelProperty(value = "装载机信息")
    private String loaderInfo;

    @ApiModelProperty(value = "装载机数")
    private Integer loaders;

    @ApiModelProperty(value = "挖掘机信息")
    private String excavatorInfo;

    @ApiModelProperty(value = "挖掘机数")
    private Integer excavators;

    @JsonSerialize(using = BigDecimalSerializer.class)
    @ApiModelProperty(value = "计划吨")
    private BigDecimal planTon;

    @JsonSerialize(using = BigDecimalSerializer.class)
    @ApiModelProperty(value = "计划作业吨")
    private BigDecimal tallyPlanTon;

    @JsonSerialize(using = BigDecimalSerializer.class)
    @ApiModelProperty(value = "作业吨")
    private BigDecimal loadTon;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "船名")
    private String shipName;

    @ApiModelProperty(value = "货名")
    private String cargoType;

}
